home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
cpp_libs
/
answrbok
/
5_2.lha
/
5_2
/
5_2.c
next >
Wrap
Text File
|
1993-08-08
|
1KB
|
58 lines
* Copyright (c) 1990 by AT&T Bell Telephone Laboratories, Incorporated. */
* The C++ Answer Book */
* Tony Hansen */
* All rights reserved. */
include <stream.h>
include "5_2a.h" // class tnode
/#include "5_2a1.c" // tnode::tnode()
/#include "5_2a2.c" // tnode::~tnode()
include "5_2b.h" // class tree
/#include "5_2b1.c" // tree::addnode()
/#include "5_2b2.c" // tree::findnode()
/#include "5_2b3.c" // tree::delnode()
/#include "5_2b4.c" // tree::orderwalk()
har *x[] =
"hello", "there", "this", "is", "a", "test", "of", "lists",
"the", "quick", "brown", "fox", "jumped", "over", "the", "lazy", "black", "dog", 0
;
tatic void prnode(tnode *tn, int depth)
cout << form("%*s", depth*4, " ") << tn->tword << "\n";
ain()
tree t;
for (char **xp = x; *xp; xp++)
t.addnode(*xp);
cout << "forward\n";
cout << "preorderwalk:\n";
t.preorderwalk(prnode);
cout << "inorderwalk:\n";
t.inorderwalk(prnode);
cout << "postorderwalk:\n";
t.postorderwalk(prnode);
cout << "doubleorderwalk:\n";
t.doubleorderwalk(prnode);
cout << "tripleorderwalk:\n";
t.tripleorderwalk(prnode);
cout << "reverse\n";
cout << "preorderwalk:\n";
t.preorderwalk(prnode, 1);
cout << "inorderwalk:\n";
t.inorderwalk(prnode, 1);
cout << "postorderwalk:\n";
t.postorderwalk(prnode, 1);
cout << "doubleorderwalk:\n";
t.doubleorderwalk(prnode, 1);
cout << "tripleorderwalk:\n";
t.tripleorderwalk(prnode, 1);
return 0;